package cn.com.shopec.erp.stock.dao;

import java.util.List;

import cn.com.shopec.erp.common.orm.IHibernateEntityDao;
import cn.com.shopec.erp.stock.entity.StockInProduct;
import cn.com.shopec.erp.stock.vo.StockInProductVo;

/**
 * @ClassName: IStockInProductDao
 * @Description: 入库商品Dao接口
 * @author: zengxuezhou
 * @date: 2016年11月28日 下午2:13:07
 */
public interface IStockInProductDao extends IHibernateEntityDao<StockInProduct> {

	/**
	 * 根据入库编号删除入库单内的商品
	 * @param stockInNo 
	 */
	void removeProductByStockInNo(String stockInNo);

	/**
	 * 删除商品（修改商品时用）
	 * @param stockInNo
	 * @return
	 */
	boolean removeForUpdate(String stockInNo);

	/**
	 * 得到指定入库单的商品数量
	 * @param stockNo
	 * @return
	 */
	int getProductsCountByStockNo(String stockNo);

	/**
	 * 得到入库单商品（带分页）
	 * @param stockNo
	 * @param pageCount
	 * @param pageSize
	 * @return
	 */
	List<StockInProductVo> getProductsListByStockNo(String stockNo, Integer pageCount, Integer pageSize);

	/**
	 * 得到入库单中商品
	 * @param stockNo
	 * @return
	 */
	List<StockInProductVo> getProductsListByStockNo(String stockNo);

	/**
	 * 设置条形码已上传
	 * @param id
	 * @param state
	 */
	void setProductCodeIsImport(String id, int state);
}
